package com.jlect.swebing.renderers.client;

/**
 * Base interface for the all events appeared in system.
 *
 * @author Sergey Kozmin
 * @since 24.11.2007 17:58:22
 */
public interface RendererEvent extends RendererEventConstants {
    /**
     * @return Initial event. Could return both, browser object or it's wrapper. It depends on renderer implementation.
     */
    public Object getInitial();

    /**
     * @return Event constant, that determines the event, that could happen in browser. See the constants mentioned
     * in this file
     *
     */
    public int getEventType();

    /**
     * This method is added because of performance issue, and could be removed further if location system is implemented
     * in GComponent library 
     * @return the renderer that generated this event.
     */
    public Renderer getSource();
}
